package com.box.service;

import java.util.List;

import com.box.entity.BlogSearch;
import com.box.entity.BlogTypeEntity;
import com.box.entity.DbBlog;
import com.box.entity.SelBlogAndType;
import com.box.utils.BaiduPage;
import com.box.utils.LayuiResult;
import com.box.utils.PageView;
import com.box.utils.QueryResult;
import com.box.utils.SearchBaiduPage;

public interface BlogService {
	
	//获取博客列表
	public LayuiResult selBlogList(Integer page,Integer limit,BlogSearch search);
	
	//删除单个记录
	public Integer delBlogById(Integer id);
	
	//批量删除
	public Integer delBlogByMany(String BlogStr) throws Exception;
	
	//批量审核为已审核
	public Integer updateBlogByUppid(String BlogStr);
	
	//批量审核为未审核
	public Integer updateBlogByNotUppid(String BlogStr);
	
	//通过ID查询博客记录
	public BlogTypeEntity selBlogById(Integer id);
			
	//添加博客记录
	public Integer InsertBlog(DbBlog blog);
	
	//修改博客记录
	public Integer UpdateBlog(DbBlog blog);
	
	//根据博客类型ID查询博客记录
	public List<DbBlog> selBlogByType(Integer typeid);
	
	//前端显示的默认博客列表
	public List<DbBlog> selBlogList();
	
	//按照点击量查询
	public List<DbBlog> selBlogListByClickHit();
	
	//站长推荐
	public List<DbBlog> selBlogListByReplyId();
	
	//猜你喜欢
	public List<DbBlog> selBlogListByGuess();
	
	//博客未审核列表
	public LayuiResult selBlogByNotUppid(Integer page,Integer limit);
	
	//博客审核列表
	public LayuiResult  selBlogByUppid(Integer page,Integer limit);
	
	//修改审核状态
	public Integer updateBlogStatusByUppid(Integer id);
	
	//修改审核状态
		public Integer updateBlogStatusByNotUppid(Integer id);
	
	
	
	/**
	 * 
	 * 个人博客日记列表
	 * 
	 * 
	 */
	public BaiduPage selBlogByAjAx(Integer page);	
	
	public BaiduPage selBlogByIndexAjax(Integer page);
	
	//很赞哦
	public Integer updateLikeId(Integer id);
	
	//点赞人数查询
	public Integer selLikeIdById(Integer id);
	
	/**
	 * 首页所有博客显示
	 * 
	 * 
	 */
	public QueryResult<BlogTypeEntity> queryBlog(Integer firstIndex,Integer pageNum);
	
	public PageView  selBlogListByIndexAjax(Integer page);
	
	/**
	 * 前端博客查询调用可重复显示业务，修改之前的业务逻辑
	 * 
	 * 
	 */
	public QueryResult<BlogTypeEntity> queryBlogByTypeId(Integer typeId,Integer firstIndex,Integer pageNum);
	
	public BaiduPage  selBlogListByTypeId(Integer typeId,Integer page);

	/**
	 * 新闻模块显示
	 * 
	 * 
	 */
	public SelBlogAndType selBlogTypeByTypeId(Integer typeId);
	
	public SearchBaiduPage searchBlogByKeywods(String q,Integer page);
	
	/**
	 * 高级搜索
	 */
	public PageView searchBlogEntityByKeyWords(String keywords,String page) throws Exception;
}
